#include "demo1.h"

#include <stdio.h>


// macOS中生成动态库:
/*
// clang++: 
clang++ -dynamiclib \
-I$JAVA_HOME/include \
-I$JAVA_HOME/include/darwin \
-o libDemo1.jnilib \
Demo1.cpp


// mac下g++其实就是clang++: 
g++ -dynamiclib \
-I$JAVA_HOME/include \
-I$JAVA_HOME/include/darwin \
-o libDemo1.jnilib \
Demo1.cpp

// GNU的g++:
gnu-g++ -dynamiclib \
-I$JAVA_HOME/include \
-I$JAVA_HOME/include/darwin \
-o libDemo1.jnilib \
Demo1.cpp
*/ 


// native方法的名称格式: Java_packageName_ClassName_methodName
// 其中packageName是类的包名 (如果你的类没有申明 "package xxx;", 则packageName部分就没有),
// ClassName为类的名称
// methodName是Java类中native方法的名称

/*
 * Class:     Demo1
 * Method:    hello
 * Signature: ()V
 */
JNIEXPORT void JNICALL Java_Demo1_hello
  (JNIEnv *, jobject) { // 如果参数没有使用, 则可以不写参数名
  printf("Hello world !\n");
}